/**   
 * @Title: JdbcDao.java 
 * CopyRight(c)2010-DMX 
 */
package com.dmx.fw.dao.interfaces;

import java.util.List;

/**
 * @Description: 继承Dao,定义sql基本查询接口
 * @author: system
 * @date: 2006
 * @version V1.0 
 * 
 */
public interface JdbcDao extends Dao{
	/**
	 * 查询数据返回LIST封装
	 * @param sql
	 * @return List
	 */
	public List queryData(String sql);
	
	/**
	 * 
	 * @param sql
	 * @param encapType 'LIST' or 'MAP'
	 * @return List
	 */
	public List queryData(String sql,String encapType);
	
	/**
	 * 查询数据返回MAP封装
	 * @param sql
	 * @return List
	 */
	public List queryDataOfMapEncap(String sql);
	
	/**
	 * @param sql
	 * @param encapType 'LIST' or 'MAP'
	 * @param params 参数列表，支持Integer,Long,Double,Float,Date,String
	 * @return List
	 */
	public List queryData(final String sql,final String encapType,final List params);
	
	/**
	 * 获得有关sql的结果行数
	 * @param sql
	 * @param encapType 'LIST' or 'MAP'
	 * @param params 参数列表，支持Integer,Long,Double,Float,Date,String
	 * @return List
	 */
	public int getTotalCount(String sql);
	
	/**
	 * @Description 执行sql
	 * @param sql
	 * @return int
	 */
	public int execute(String sql) throws Exception;
}
